package cn.edu.wfit.modules.learn.mapper.coursemangement;

import cn.edu.wfit.modules.learn.domain.WfitCourse;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;


/**
 * 课程Mapper接口
 * 
 * @author ruoyi
 * @date 2025-07-18
 */
@Mapper
public interface WfitCourseMapper 
{
    /**
     * 查询课程
     * 
     * @param courseId 课程主键
     * @return 课程
     */
    public WfitCourse selectWfitCourseByCourseId(Long courseId);

    /**
     * 课程人数
     *
     * @param courseId
     * @return
     */
    public Long countWfitCourseByCourseId(Long courseId);

    /**
     * 查询课程列表
     * 
     * @param wfitCourse 课程
     * @return 课程集合
     */
    public List<WfitCourse> selectWfitCourseList(WfitCourse wfitCourse);

    /**
     * 新增课程
     * 
     * @param wfitCourse 课程
     * @return 结果
     */
    public int insertWfitCourse(WfitCourse wfitCourse);

    /**
     * 修改课程
     * 
     * @param wfitCourse 课程
     * @return 结果
     */
    public int updateWfitCourse(WfitCourse wfitCourse);

    /**
     * 删除课程
     * 
     * @param courseId 课程主键
     * @return 结果
     */
    public int deleteWfitCourseByCourseId(Long courseId);

    /**
     * 批量删除课程
     * 
     * @param courseIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteWfitCourseByCourseIds(Long[] courseIds);

    /**
     * 根据学生id查询课程列表
     * @param studentId 学生id
     * @return 课程列表
     */
    List<WfitCourse> selectListById(String studentId);
}
